package main

import "fmt"
// Go 支持 递归。 这里是一个经典的阶乘示例。

//fact 函数在到达 fact(0) 前一直调用自身。
func fact(n int) int {
	if n==0 {
		return 1
	}
	return n*fact(n-1)
}

func main() {
	fmt.Println(fact(7))
	fmt.Println(fact(8))
	fmt.Println(fact(9))
	fmt.Println(fact(10))
}